In recent years, digital wireless communication systems have been used to convey a variety of information between multiple locations. With digital communications, information is translated into a digital or binary form, referred to as bits, for communications purposes. The transmitter maps this bit stream into a modulated symbol stream, which is detected at the digital receiver and mapped back into bits and information.
In digital wireless communications, the radio environment presents many difficulties that impede successful communications. One difficulty is that the signal level can fade, because the signal may travel in multiple paths. As a result, signal images arrive at the receiver antenna out of phase. This type of fading is commonly referred to as Rayleigh fading or fast fading. When the signal fades, the signal-to-noise ratio becomes lower, causing a degradation in the communication link quality.
A second problem occurs when the multiple signal paths are much different in length. In this ease, time dispersion occurs, in which multiple fading signal images arrive at the receiver antenna at different times, giving rise to signal echoes. This causes intersymbol interference (ISI), where the echoes of one symbol interfere with subsequent symbols.
Raleigh fading can be mitigated by using diversity, such as antenna diversity, at the receiver. The signal is received on a plurality of antennas. Because the antennas have slightly different locations and/or antenna patterns, the fading levels on the antennas are different. In the receiver, these multiple antenna signals are combined either before or after signal detection using such techniques as maximal-radio-combining, equal-gain-combining, and selective combining. These techniques are well known to those skilled in the art and can be found in standard textbooks, such as W.C.Y. Lee, Mobile Communications Engineering, New York: McGrawHill, 1982.
The time dispersion can be mitigated by using an equalizer. Common forms of equalization are provided by linear equalizers, decision-feedback equalizers, and maximum-likelihood sequence-estimation (MLSE) equalizers. A linear equalizer tries to undo the effects of the channel by filtering the received signal. A decision-feedback equalizer exploits previous symbol detections to cancel out the intersymbol interference from echoes of these previous symbols. Finally, an MLSE equalizer hypothesizes various transmitted symbol sequences and, with a model of the dispersive channel, determines which hypothesis best fits the received dam. These equalization techniques are well known to those skilled in the art, and can be found in standard textbooks such as J.G. Proakis, Digital Communications, 2nd ed., New York: McGraw-Hill, 1989.
Of the three common equalization techniques, MLSE equalization is preferable from a performance point of view. In the MLSE equalizer, all possible transmitted symbol sequences are considered. For each hypothetical sequence, the received signal samples are predicted using a model of the multipath channel. The difference between the predicted received signal samples and the actual received signal samples, referred to as the prediction error, gives an indication of how good a particular hypothesis is. The squared magnitude of the prediction error is used as a metric to evaluate a particular hypothesis. This metric is accumulated for different hypotheses for use in determining which hypotheses are better. This process is efficiently realized using the Viterbi algorithm, which is a form of dynamic programming.
Ideally, the diversity combining process and the equalization process should be combined in some optimal way. Recent research has shown that for MLSE equalization, diversity combining should be done within the equalizer. This research can be found in W.H. Sheen and G.L. Stuber, "MLSE equalization and decoding for multipath-fading channels," IEEE Trans. Commun., vol. 39, pp. 1455-1464, Oct. 1991; Q. Liu and Y. Wan "An adaptive maximum-likelihood sequence estimation receiver with dual diversity combining/selection," Ind. Symp. on Personal, Indoor and Mobile Radio Commun., Boston, Mass., pp. 245-249, Oct. 19-21, 1992; and Q. Liu and Y. Wan, "A unified MLSE detection technique for TDMA digital cellular radio," 43rd IEEE Vehicular Technology Conference, Seacaucus, N.J., pp. 265-268, May 18-20, 1993. In the above mentioned research, diversity combining is performed by adding together the magnitude squared prediction errors from different diversity channels when forming metrics.
Further improvement is obtained by scaling the squared prediction errors from the different diversity branches. A detailed description of such an MLSE equalizer is given in U.S. Pat. No. 5,191,598 to T.O Backstrom et al., which is incorporated herein by reference. Unfortunately, the MLSE equalizer involves computing many squared prediction error terms. This can be costly in terms of hardware or software complexity. Thus, there is a need to reduce the complexity of the MLSE equalizer/diversity combiner.
For the MLSE equalizer without diversity combining, the Ungerboeck method applies two steps to reduce complexity, as described in G. Ungerboeck, "Adaptive maximum likelihood receiver for carrier modulated data transmission systems," IEEE Trans. Commun., vol. COM-22, no. 4, pp. 624-535, May 1974. The first step is to expand the magnitude square term and to eliminate terms that are common to all hypotheses. As a simple example, the term (a-b).sup.2 can be expanded into a.sup.2 -2ab+b.sup.2. If "a" does not depend on the hypothesized data, then the a.sup.2 term can be dropped from the metric computation.
The second step used by Ungerboeck is to re-arrange the order of the metric computations. With standard MLSE equalization, metrics are computed and updated based on successively received data samples. Each iteration of the Viterbi algorithm corresponds to a new received data sample. Using the second step, each iteration of the Viterbi algorithm corresponds to a newly transmitted symbol.
These two steps can be further explained by a simple example. Suppose the transmitter transmits a symbol stream s(n), in which each s(n) can take on one of S possible complex values. At the receiver, the received signal is sampled once every T seconds, where T is the symbol period, to give a received signal stream r(n). Suppose the intervening channel consists of two fading rays, a main ray and an echo, where the echo arrives T seconds later. Then, the received signal can be modeled as: EQU r(n)=c(0)s(n)+c(1)s(n-1)+n(n)
where c(0) and c(1) are complex channel tap values and n(n) is additive noise of some kind.
In the MLSE equalizer, at iteration n, there would be S different previous "states", corresponding to the S possible values for s(n-1). Associated with each previous state would be an accumulated metric, accumulated from previous iterations. There would also be S current states, corresponding to the S possible values for s(n). Each possible pairing of a previous state with a current state corresponding to a hypothetical sequence {s.sub.h (n), s.sub.h (n-1)}. For each hypothesis, the predicted received signal value would be: EQU r.sub.pred (n,h)=c(0)s.sub.h (n)+c(1)s.sub.h (n-1)
The corresponding branch or delta metric would be given by EQU M.sub.h (n)=.vertline.r(n)-r.sub.pred (n,h).vertline..sup.2
The candidate metric for a current state would be the sum of the branch metric and the previously accumulated metric associated with s.sub.h (n-1). For each current state, there are S possible previous states. For each current state, the previous state which gives the smallest candidate metric is selected as the predecessor state, and the candidate metric becomes the accumulated metric for that current state.
At the next iteration, using r(n+1), the current states from time n become the previous states at time n+1. After all the data have been received, the state with the smallest accumulated metric, and all the predecessors, indicate the most likely transmitted symbol sequence, which becomes the detected symbol sequence. Sometimes decisions are made before all the data are received using a decision depth.
The first Ungerboeck step can be illustrated by expanding the expression for M.sub.h (n). This gives EQU M.sub.h (n)=A(n)+B(n)+C(n)+D(n)
where EQU A(n)=.vertline.r(n).vertline..sup.2 EQU B(n)=2Re{r(n)c*(0)s.sub.h *(n)}+2Re{r(n)c*(1)s.sub.h *(n-1)} EQU C(n)=.vertline.c(0).vertline..sup.2 .vertline.s.sub.h (n).vertline..sup.2 +.vertline.c(1).vertline..sup.2 .vertline.s.sub.h (n-1).vertline..sup.2 EQU D(n)=2Re{c(0)c*(1)s.sub.h (n)s.sub.h *(n-1))}
where "*" denotes complex conjugation. The Ungerboeck method drops the term A(n), which is common to all M.sub.h (n).
The second Ungerboeck step combines terms proportional to s.sub.h *(n) from different iterations. At iteration n+1, the terms become: EQU B(n+1)=2Re{r(n+1)c*(0)s.sub.h *(n+1)}+2Re{r(n+1)c*(1)s.sub.h *(n)} EQU C(n+1)=.vertline.c(0).vertline..sup.2 .vertline.s.sub.h (n+1).vertline..sup.2 +.vertline.c(1).vertline..sup.2 .vertline.s.sub.h (n).vertline..sup.2 EQU D(n+1)=2Re{c(0)c*(1)s.sub.h (n+1)s.sub.h *(n)}
Thus, there are terms proportional to s.sub.h *(n) in both iterations. These can be recombined by defining a new metric, M'.sub.h (n), as EQU M'.sub.h (n)=B'(n)+C'(n)+D(n)
where EQU B'(n)=2Re{f(n)s.sub.h *(n)} EQU f(n)=r(n)c*(0)+r(n+1)c*(1) EQU c'(n)=(.vertline.c(0).vertline..sup.2 +.vertline.c(1).vertline..sup.2).vertline.s.sub.h (n).vertline..sup.2
As a result, B'(n) contains f(n), which can be realized by filtering the received data r(n) with a filter using taps c*(0) and c*(1).
Thus, the new metric uses two data samples, r(n) and r(n+1), instead of just one, r(n). Also, unlike B(n) and C(n), B'(n) and C'(n) depend only on one hypothesized symbol, s.sub.h (n), instead of two, s.sub.h (n) and s.sub.h (n-1). Thus, conceptually, iteration n corresponds to the transmitted symbol s.sub.h (n) rather than the received data value r(n).
When MLSE equalization and diversity combining are performed together, the Ungerboeck form can be used to reduce the complexity. The situation where c(0) and c(1) do not change with time, referred to as the static channel case, was described in U.S. Pat. No. 5,031,193 to Atkinson et al. In the Atkinson et al. patent, both Ungerboeck steps are used to obtain the demodulator shown in FIGS. 1 and 2 of U.S. Pat. No. 5,031,193. In FIG. 2 of the Atkinson et al. patent, the term f(n) is realized with a matched filter on the diversity branch 1, and a matched filter on the diversity branch 2.
However, there are disadvantages with using the Ungerboeck form. One is the problem that the channel tap values, c(0) and c(1) in the above example, may change with sample time n. In the conventional form, all of the c(0) and c(1) terms can be replaced with c(0,n) and c(1,n). As a result, the Ungerboeck form contains a mixture of channel taps from time n and from time n+1. This would require storage capability for multiple sets of channel taps and may make channel tracking more difficult. Channel tracking and prediction are well understood and examples can be found in A.P. Clark and S. Hariharan, "Adaptive channel estimator for an HF radio link." IEEE Trans. Commun., vol. 37, pp. 918-926, Sept. 1989.
In U.S. Pat. No. 5,031,193, an alternative solution is given to address the case of time-varying channel taps. However, this solution does not use the Ungerboeck form, and it does not combine equalization and diversity combining in an optimal manner. Instead, each diversity branch has a separate equalizer. Channel tracking is performed using branch detections, not detections which have benefitted from diversity combining. The outputs of these equalizers are then combined using standard diversity combining techniques. So, the equalization and diversity combining steps have been performed separately, not jointly.
Thus, there is a need for a receiver that jointly performs MLSE equalization and diversity combining and that lends itself to the case where the channel varies as a function of time.